Analizzeremo un set di dati legato all’utilizzo di carte di credito e estrarremo dei segmenti di mercato.
Il dataset si riferisce a 8.950 clienti di un istituto bancario descritti da 18 variabili.
| ID | Variabile | Tipo | Descrizione |
|---|---|---|---|
| 1 | CUST_ID | stringa | Identificativo del cliente |
| 2 | BALANCE | numerico | Saldo della carta di credito |
| 3 | BALANCE_FREQUENCY | numerico | Frequenza con cui il saldo viene aggiornato, punteggio compreso tra 0 e 1 (1 = aggiornato frequentemente, 0 = non aggiornato frequentemente) |
| 4 | PURCHASES | numerico | Importo degli acquisti effettuati dal conto |
| 5 | ONEOFF_PURCHASES | numerico | Importo massimo di un acquisto fatto in un’unica soluzione |
| 6 | INSTALLMENTS_PURCHASES | numerico | Importo degli acquisti effettuati a rate |
| 7 | CASH_ADVANCE | numerico | Anticipo in contanti |
| 8 | PURCHASES_FREQUENCY | numerico | Frequenza con cui vengono effettuati gli acquisti, punteggio compreso tra 0 e 1 (1 = acquistato frequentemente, 0 = non acquistato frequentemente) |
| 9 | ONEOFF_PURCHASES_FREQUENCY | numerico | Frequenza degli acquisti effettuati in un’unica soluzione |
| 10 | PURCHASES_INSTALLMENTS_FREQUENCY | numerico | Frequenza degli acquisti a rate |
| 11 | CASH_ADVANCE_FREQUENCY | numerico | Frequenza degli anticipi in contanti |
| 12 | CASH_ADVANCE_TRX | numerico | Transazioni di anticipo in contanti |
| 13 | PURCHASES_TRX | numerico | Transazioni di acquisto |
| 14 | CREDIT_LIMIT | numerico | Limite di credito |
| 15 | PAYMENTS | numerico | Pagamenti |
| 16 | MINIMUM_PAYMENTS | numerico | Importo minimo dei pagamenti effettuati dall’utente |
| 17 | PRC_FULL_PAYMENT | numerico | Percentuale del pagamento completo effettuato dall’utente |
| 18 | TENURE | numerico | Durata del servizio della carta di credito per l’utente |
In questo step elimineremo semplicemente i clienti che hanno dei dati mancanti. Infatti il K-means opera, generalmente con tabelle piene dei dati. Ci sono tecniche di imputazione dei dati mancanti ma non le utilizzeremo in questo studio.
| key | num.missing |
|---|---|
| MINIMUM_PAYMENTS | 313 |
| CREDIT_LIMIT | 1 |
Un po’ di correlazioni
Utilizzeremo una tecnica di riduzione dimensionale di tipo PCA (Analisi in componenti principali) per tener conto delle correlazioni tra le variabili e degli effetti sulla funzione costo del clustering.
Eseguiremo il K-means sulle prime 5 componenti che permettono di riassumere il 74,2% della variabilità complessiva dei dati.
Al fine di individuare il numero ottimale di K eseguiamo alcune procedure di validazione che ci permetteranno di avere un suggerimento circa il numero di segmenti da estrarre.
Possiamo calcolare la qualità della clustering utilizzando la formula \[R^2\%=\left(1-\frac{Cost}{SS_{Totale}}\right)\times 100\]
Che nel nostro caso è uguale a 48,9%.
Vediamo l’importanza globale di ogni variabile
Vediamo i cluster sulle prime due dimensioni:
Vediamo ora il contributo/importanza di ogni variabile di segmentazione. Attenzione: avendo effettuato un’operazione di riduzione dimensionale che modifica la variabilità di ogni variable per darle uguale importanza (variabilità ) nell’analisi, confrontiamo solo le singole variabili di segmentazione originarie.
Andiamo ora a vedere l’importanza di ogni variabile di segmentazione in ogni segmento, valutando quanto ogni media nel segmento è diversa dalla media generale.
Più una media è significativamente diversa da quella generale, più essa caratterizza (descrive) il segmento
Medie di ogni segmento e media generale
Possiamo anche confrontare per coppie di segmenti come si distributiscono le medie.